///////////////////////////////
// Analizador léxico
///////////////////////////////

header {
	package practicaspl.p3;
}

class Analex extends Lexer;

	options {
		//Opciones
		k = 2;
	}
	
	tokens {
		SET = "SET";
		IF = "IF";
		WHILE = "WHILE";
		FOR = "FOR";
	}
	
	BLANCO: (' '|'\t'|"\r\n") {
		$setType(Token.SKIP);
	};
	protected LETRA : 'a'..'z'|'A'..'Z'|'_';
	protected DIGITO : '0'..'9';
	DOLAR : '$';
	BOOLEANO : ("TRUE"|"FALSE");
	NUMERO : (DIGITO)+;
	IDENT : LETRA (LETRA|DIGITO)*;
	SEPARADOR : ';';
	OPERADOR : '=';
	MAS : '+';
	MENOS : '-';
	COMPARADOR : ('<' | '>');
	PARENTESISA : '(';
	PARENTESISC : ')';
	LLAVEA : '{';
	LLAVEC : '}';
	RUTA : ('/' (LETRA|DIGITO)*)+;
	CADENA : ("\"" (LETRA|DIGITO|BLANCO)* "\"");
